from abc import ABC, abstractmethod

import sys
import os

# 添加项目根目录到Python路径
current_dir = os.path.dirname(os.path.abspath(__file__))
# 修正项目根目录计算逻辑，确保能正确导入models模块
project_root = os.path.dirname(os.path.dirname(os.path.dirname(current_dir)))
if project_root not in sys.path:
    sys.path.insert(0, project_root)

# 将导入语句移到路径设置之后
from models.state import WorkflowState

class BaseAgent(ABC):
    @abstractmethod
    def process(self, state: WorkflowState) -> WorkflowState:
        pass
